#pragma once
#include "Mychart.h"

class MyActivityDiagram : public MyChart
{
public:
	MyActivityDiagram(void)
	{
	}
	~MyActivityDiagram(void)
	{
	}

	Input * CreateInput()
	{
		return new ADInput(infor._x, infor._y, infor._width, infor._height, 
							infor._stroke, infor._strokeWidth, infor._fill);
	}

	Output * CreateOutput()
	{
		return new ADOutput(infor._x, infor._y, infor._width, infor._height, 
							infor._stroke, infor._strokeWidth, infor._fill);
	}

	Start * CreateStart()
	{
		return new ADStart(infor._x, infor._y, infor._width, infor._height, 
							infor._stroke, infor._strokeWidth, infor._fill);
	}

	End * CreateEnd()
	{
		return new ADEnd(infor._x, infor._y, infor._width, infor._height, 
							infor._stroke, infor._strokeWidth, infor._fill);
	}

	Condition * CreateCondition()
	{
		return new ADCondition(infor._x, infor._y, infor._width, infor._height, 
							infor._stroke, infor._strokeWidth, infor._fill);
	}

	Transition * CreateTransition()
	{
		return new ADTransition(infor._x, infor._y, infor._width, infor._height, 
							infor._stroke, infor._strokeWidth, infor._fill);
	}

	Processer * CreateProcesser()
	{
		return new ADProcesser(infor._x, infor._y, infor._width, infor._height, 
							infor._stroke, infor._strokeWidth, infor._fill);
	}

	string GetName()
	{
		return "ActivityDiagram";
	}
};

